const router = require('./src/router');
const tools = require('./src/utils/tools');

// 云函数入口函数
exports.main = async (ctx) => {
  try {
    // url 路径，data 参数
    let { url, data } = ctx
    if (!url) {
      return tools.resError('无效的请求地址', 10001)
    }
    const [mode, name] = url.split('/')
    if (!router[mode]) {
      return tools.resError(`模块 ${mode} 不存在`, 10002)
    }
    if (!router[mode][name]) {
      return tools.resError(`模块 ${mode} 中不存在 ${name} 函数`, 10003)
    }
    if (!data) {
      data = {}
    }
    return router[mode][name](data)
  } catch (error) {
    console.log(error, '-->>> error')
    return tools.resError(error, 10000)
  }
}

/**
 *前台调用示例
// 1 初始化
wx.cloud.init({
  env: 'lijinbode-foxmail-com'
})
// 2 调用云函数 url=[模块名]/[方法名]
wx.cloud.callFunction({
	name: 'api',
	data: {
		url: 'MockData/userList',
		data: {
			pageSize: 3
		}
	},
	success:function(res) {
		console.log(res);
	}
})
 */